<?php
namespace app\api\controller\pub;

use app\api\controller\Base;
use app\api\controller\mytool\Sendmessage;
use app\common\model\company\Contract as Contractmodel;
use app\common\model\company\ContractTemp;
use Firebase\JWT\JWT;
use think\facade\Cache;

class Contract extends Base
{
    /**
     * 产生jwt加密串，参考session
     */
    public function initialize()
    {
        parent::initialize();
    }

    /**
     * 获取合同列表
     * @return [type] [description]
     */
    public function getcontracttemp(){
        //获取合同模板
        $id = input('p');
        $path = '';//合同路径
        $temp = Contractmodel::where('PrintPassword', $id)->value('TempId');
        if(!empty($temp)){
           $path = ContractTemp::where('Id',$temp)->value('path'); 

        }
        return myok($path);
    }

    /**
     * 获取支付连接 同时，通知财务 客户可能会进行付款
     * @return [type] [description]
     */
    public function getpay()
    {
        $id = input('id');
        if (empty($id)) {
            return moerr('没有找到合同信息');
        }
        $data = Contractmodel::where('PrintPassword', $id)->find();
        if (empty($data)) {
            return moerr('缺少合同信息');
        }
        if (empty(get_config_value('contract_pay_url'))) {
            return moerr('缺少支付链接');
        }
        //判断是否在3分钟内通知过合同财务管理者，如果没通知过则通知，否则直接跳转
        if (!Cache::get('contract_pay_id' . $data['ContractId'])) {
            Sendmessage::Contract(5, $data['ContractId'], $data);
            Cache::set('contract_pay_id' . $data['ContractId'], '1', 180);
        }
        $this->redirect(get_config_value('contract_pay_url'));
    }

}
